/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.flexengine.math;

/**
 * @author Luann R. Athayde
 * @version 1.0
 * @since 1.0
 */
public abstract class Form3D extends Form {
    
    private Point3D location;
    
    public Form3D() {
        this("Form3D", 0f, 0f, 0f);
    }

    public Form3D(String name) {
        this(name, 0f, 0f, 0f);
    }

    public Form3D(String name, float x, float y, float z) {
        this(name, new Point3D(x, y, z));
    }

    public Form3D(String name, Point3D location) {
        super(name);
        this.location = location;
    }
    
    public Point3D getLocation() {
        return location;
    }

    public void setLocation(Point3D location) {
        this.location = location;
    }

    public float getX() {
        return getLocation().getX();
    }

    public float getY() {
        return getLocation().getY();
    }
    
    public float getZ() {
        return getLocation().getZ();
    }
    
    public abstract float getArea();
    public abstract float getVolume();
    
}
